var api = require('../../utils/api.js');
var app = getApp();
import jiuaiDebounce from '../../utils/jiuai-debounce.js'
Page({

  /**
   * 页面的初始数据
   */
  data: {
    
    list:[
      // { name: '拉丁服拉丁服拉丁服拉丁服拉丁服拉丁服拉丁服拉丁服拉丁服据科技空间即可快捷键开个会', txtStyle:0},
      // { name: '拉丁服拉丁服拉丁服拉丁服拉丁服拉丁服拉丁服拉丁服拉丁服据科技空间即可快捷键开个会', txtStyle:0}
    ],
    total:'',
    listArr:'',
    rightWidth:70,
  },
  
//跳转填写订单页面
  toFillOrder(){
    let selectList=[];
    this.data.list.forEach(item=>{
      selectList.push(...item.list)
    })
    
    selectList=selectList.filter(item => item.is_checked==1);
    console.log(selectList)
    if(selectList.length==0){
      wx.showToast({
        title: '请选择商品',
        icon:"none"
      })
      return
    }

   
    wx.navigateTo({
      url: '/pages/FillOrder/FillOrder?selectList=' + JSON.stringify(selectList)+'&type=1',
    })
  },

  //跳转店铺列表
  toShop(e){
    let { store_id}=e.currentTarget.dataset;
    wx.navigateTo({
      url: '/pages/shopList/shopList?store_id=' + store_id,
    })
  },

  //跳转商品详情
  toGoodsDetail(e){
    let { goods_id } = e.currentTarget.dataset;
    wx.navigateTo({
      url: '/pages/productDetail/productDetail?id=' + goods_id,
    })
  },

  //获取购物车列表
 
  getShopCar(){
    wx.showLoading({ mask:true})
    api.fetchApi('/Cart/index', { token: wx.getStorageSync('token')}).then(res => {
      wx.hideLoading();
      let list = res.rows;
      let listArr=res
      this.setData({
        list,
        listArr
      })
     
    })
   
  },

  //商品单选
  selectGoods(e){
    var {gid: id,type } = e.currentTarget.dataset;
   // console.log(e,id,shop_id)
    api.fetchApi('/Cart/goods_check', { type, id, token: wx.getStorageSync('token') }).then(res => {
      this.getShopCar()
    })
  },

  //店铺商品全选
  shopAllSelect(e){
    var {sid,type } = e.currentTarget.dataset;
   
    api.fetchApi('/Cart/goods_check', { type, id: sid, token: wx.getStorageSync('token') }).then(res => {
      this.getShopCar()
    })
  },

  //数量加减
  valChange(e){
    // var { gid: id } = e.currentTarget.dataset;
    // var goods_num = e.detail;
    // api.fetchApi('/Cart/edit', { id, goods_num, token: wx.getStorageSync('token') }).then(res => {
    //   this.getShopCar()
    // })
    
  },

  addNum(e){
    // console.log(e)
    var { gid: id, num: goods_num } = e.currentTarget.dataset;
    goods_num++;

    jiuaiDebounce.canDoFunction({
      key: "tap",//基于此值判断是否可以操作，如两个方法传入了同样的key，则会混淆，建议传入调用此事件的方法名，简单好梳理
      time: 1000,//如果传入time字段，则为定时器后，自动解除锁定状态，单位（毫秒）
      success: () => {//成功中调用应该操作的方法，被锁定状态不会执行此代码块内的方法
        api.fetchApi('/Cart/edit', { id, goods_num, token: wx.getStorageSync('token') }).then(res => {
          this.getShopCar()
        })
      }
    })
  },
  reduceNum(e){
    // console.log(e)
    var { gid: id, num: goods_num } = e.currentTarget.dataset;
    goods_num--
    jiuaiDebounce.canDoFunction({
      key: "tap",//基于此值判断是否可以操作，如两个方法传入了同样的key，则会混淆，建议传入调用此事件的方法名，简单好梳理
      time: 1000,//如果传入time字段，则为定时器后，自动解除锁定状态，单位（毫秒）
      success: () => {//成功中调用应该操作的方法，被锁定状态不会执行此代码块内的方法
        api.fetchApi('/Cart/edit', { id, goods_num, token: wx.getStorageSync('token') }).then(res => {
          this.getShopCar()
          
        })
      }
    })
  },
  countPrice(e){
    // console.log(e)
    var { gid: id, num: goods_num } = e.currentTarget.dataset;
    goods_num = e.detail.value
    // console.log(goods_num)
    jiuaiDebounce.canDoFunction({
      key: "tap",//基于此值判断是否可以操作，如两个方法传入了同样的key，则会混淆，建议传入调用此事件的方法名，简单好梳理
      time: 1000,//如果传入time字段，则为定时器后，自动解除锁定状态，单位（毫秒）
      success: () => {//成功中调用应该操作的方法，被锁定状态不会执行此代码块内的方法
        api.fetchApi('/Cart/edit', { id, goods_num, token: wx.getStorageSync('token') }).then(res => {
          this.getShopCar()
        })
      }
    })
  },
  //商品全选
  allSelect(e){
    console.log(e)
    let type = e.currentTarget.dataset.type
    api.fetchApi('/Cart/goods_check', { type, id: 0, token: wx.getStorageSync('token') }).then(res=>{
      this.getShopCar()
    })
  },

//删除商品
  delItem(e){
    let id=e.currentTarget.dataset.id;
    api.fetchApi('/Cart/delete', { id, token: wx.getStorageSync('token') }).then(res => {
     
      this.getShopCar()
    })
  },
  
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
   
   
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    this.getShopCar();
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})